package com.project.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.project.bean.UserBean;

/**
 * <p>
 * 用户端的用户表 服务类
 * </p>
 *
 * @author lhy
 * @since 2021-10-05
 */
public interface IUserService {
    /**
     * （自用接口）
     * 按openid查找用户
     * 如果数据库中有这个用户，则返回
     * 如果没有则根据openid添加一个新用户再返回
     *
     * @param openid openid
     * @return 用户对象
     */
    public UserBean findByOpenid(String openid);

    /**
     * (后台模块调用接口)
     * 动态分页查询
     *
     * @param pn       页码
     * @param pageSize 每页大小
     * @param userCode 用户编号
     * @param realName 用户真实姓名
     * @param gentle   用户性别
     * @param phone    电话
     * @return 分页对象
     */
    public IPage<UserBean> findByItem(int pn, int pageSize, String userCode, String realName, String gentle, String phone);

    /**
     * 注册用户
     *
     * @param userCode 用户编号
     * @param realName 真实姓名
     * @param phone    电话
     * @param gentle   性别
     */
    public void registerUser(String userCode, String realName, String phone, String gentle);

    /**
     * 修改用户的骑手权限
     *
     * @param userCode 用户编号
     * @return 用户对象
     */
    public UserBean updateRiderStatus(String userCode);

    /**
     * 修改用户的商家权限
     *
     * @param userCode 用户编号
     * @return 用户对象
     */
    public UserBean updateShopStatus(String userCode);
}
